Apparatus and method for in-vehicle location of a mobile device

ABSTRACT

In at least one embodiment, an apparatus including a controller that is electrically coupled to a plurality of transceivers within a vehicle for enabling bi-directional wireless communication via Bluetooth Low Energy (BLE) between the controller and an occupant communication device (OCD). The controller is further configured to: transmit an advertisement signal indicative of the vehicle being in motion from each transceiver to the OCD via BLE and to receive, at each transceiver, a scan request signal from the OCD via BLE at a first power level. The controller is further configured to determine the location of the OCD in the vehicle in response to receiving the scan request signal at each transceiver at the first power level.

CROSS-REFERENCE TO RELATED APPLICATION

This application is the U.S. national phase of PCT Application No.PCT/US2015/010311 filed on Jan. 6, 2015, which claims the benefit of USProvisional Application Ser. No. 61/923,989 filed on Jan. 6, 2014, thedisclosures of which are incorporated in their entirety by referenceherein.

TECHNICAL FIELD

Aspects of the present disclosure provide an apparatus and method for avehicle's infotainment system to collaborate with nomadic mobile devicesto determine a location of the mobile device within the vehicle.

BACKGROUND

Distracted driving due to manual interaction with a cellular phone is agrowing societal issue. There is an effort to curb the use of cellphones while driving. The National Highway Traffic Safety Administration(NHTSA) has issued guidelines for automotive infotainment systems in aneffort to minimize distractions. An example of this is set forth in“Visual-Manual NHTSA Driver Distraction Guidelines for In-VehicleDevice” by the National Traffic Safety Administration. Docket No.NHTSA-2010-0053, Feb. 16, 2012. Within these guidelines, NHTSA isproposing a requirement for cell phones to implement a method to lockout certain tasks while driving. At the international level, theInternational Telecommunications Union (ITU) initiated a working groupto identify any actions that can be taken to address distracted driving.

There are currently several apps available to consumers that willrestrict cell phone usage while driving. These apps often requirehardware to be installed on the vehicle. Others require the phone tomonitor its own speed via global positioning satellite (GPS) informationand automatically shut down the phone while traveling at significantspeeds. These apps may be popular but not useful due to the voluntarynature of these apps and the inability to discern between a driver andpassenger.

SUMMARY

In at least one embodiment, an apparatus including a controller that iselectrically coupled to a plurality of transceivers within a vehicle forenabling bi-directional wireless communication via Bluetooth Low Energy(BLE) between the controller and an occupant communication device (OCD).The controller is further configured to: transmit an advertisementsignal indicative of the vehicle being in motion from each transceiverto the OCD and to receive, at each transceiver, a scan request signalfrom the OCD at a first power level. The controller is furtherconfigured to determine the location of the OCD in the vehicle inresponse to receiving the scan request signal at each transceiver at thefirst power level.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments of the present disclosure are pointed out withparticularity in the appended claims. However, other features of thevarious embodiments will become more apparent and will be bestunderstood by referring to the following detailed description inconjunction with the accompany drawings in which:

FIG. 1 depicts an implementation that utilizes Bluetooth Low Energy(BLE) for wireless communication;

FIG. 2 depicts an arrangement in which a plurality of occupantcommunication devices (OCDs) may be arranged in a vehicle;

FIG. 3 depicts an apparatus for determining a location of the OCDs inaccordance to one embodiment;

FIG. 4 depicts an apparatus for determining the location of the OCDs inaccordance to one embodiment;

FIGS. 5a-5b depict a method for determining the location of the OCDsutilizing the apparatus of FIG. 3 in accordance to one embodiment;

FIGS. 6a-6c depict a method for determining the location of the OCDsalso utilizing the apparatus of FIG. 3 in accordance to one embodiment;

FIG. 7 depicts a method for determining the location of the OCDsutilizing the apparatus of FIG. 4 in accordance to one embodiment; and

FIGS. 8a-8c depict a method for determining the location of the OCDsutilizing the apparatus of FIG. 4 in accordance to one embodiment.

DETAILED DESCRIPTION

As required, detailed embodiments of the present invention are disclosedherein; however, it is to be understood that the disclosed embodimentsare merely exemplary of the invention that may be embodied in variousand alternative forms. The figures are not necessarily to scale; somefeatures may be exaggerated or minimized to show details of particularcomponents. Therefore, specific structural and functional detailsdisclosed herein are not to be interpreted as limiting, but merely as arepresentative basis for teaching one skilled in the art to variouslyemploy the present invention.

The embodiments of the present disclosure generally provide for aplurality of circuits or other electrical devices. All references to thecircuits and other electrical devices and the functionality provided byeach, are not intended to be limited to encompassing only what isillustrated and described herein. While particular labels may beassigned to the various circuits or other electrical devices disclosed,such labels are not intended to limit the scope of operation for thecircuits and the other electrical devices. Such circuits and otherelectrical devices may be combined with each other and/or separated inany manner based on the particular type of electrical implementationthat is desired. It is recognized that any circuit or other electricaldevice disclosed herein may include any number of microprocessors,integrated circuits, memory devices (e.g., FLASH, random access memory(RAM), read only memory (ROM), electrically programmable read onlymemory (EPROM), electrically erasable programmable read only memory(EEPROM), or other suitable variants thereof) and software which co-actwith one another to perform operation(s) disclosed herein. In addition,any one or more of the electric devices may be configured to execute acomputer-program that is embodied in a non-transitory computer readablemedium that is programmed to perform any number of the functions asdisclosed.

Aspects disclosed herein are generally facilitated utilize portions ofBluetooth Low Energy (BLE) to enable two devices to communicate withoutbeing paired and/or connected (i.e., previously electrically mated inorder to facilitate electrical communication). For example, FIG. 1illustrates an implementation 10 that utilizes Bluetooth Low Energy(BLE) for wireless communication. The implementation 10 includes anadvertiser 12 that is arranged to transmit an advertisement signal (orsignal ADV). The implementation 10 further includes a scanner 14 fortransmitting a scanner request signal (or signal SCAN_REQ) in responseto the signal ADV. The signal ADV may be somewhat generic in that thesignal may include simple data such as an identification of the sourcethat transmits the signal (e.g., in this case the advertiser 12, a nameand/or manufacturer specific data (e.g. weight, location, etc.)). Thescanner 14 is configured to scan for the signal ADV. Depending on thesituation or circumstance, the scanner 14 may ignore the signal ADV orsimply process the data for various functions. The scanner 14 mayoptionally transmit the signal SCAN_REQ to the advertiser 12 in order toobtain information of interest from the advertiser 12.

Consider the following example, an indoor shopping mall may include anarray of advertisers 12 to advertise location information (ortransmit/advertise the signal ADV) throughout the mall. The scanner 14may use the location information as received from the signal ADV tonavigate to a particular location within the mall. At the same time,various stores may each utilize the scanner 14 to receive the signal ADVto receive sales promotion from the various advertisers 12. As thescanner 14 passes by the advertiser 12 located at a particular store,the scanner 14 may alert the user of a sale promotion as a function ofuser preferences (e.g. cookies, settings, history, etc.). Additionally,the advertiser 12 may be configured to receive signal SCAN_REQ from thescanner 14 such that the advertiser 12 provides additional informationto the scanner 14 based on the signal SCAN_REQ. One advantage of therelationship between advertiser 12 and the scanner 14 is that neitherdevice has to be electronically paired with one another for each totransmit and/or receive information between each device.

It is recognized that the BLE advertiser 12 and the scanner 14configuration can be extended or applied to the automotive environmentfor determining a location of various occupant communication devices(OCDs) in a vehicle and for selectively restricting usage of the OCDbased on the location of the OCD within the vehicle and possibly furtherbased on other conditions. For example, such OCDs may comprise cellphones, etc.

FIG. 2 depicts an arrangement in which a plurality of occupantcommunication devices (OCDs) 16 a-16 n (“16”) may be arranged in avehicle 18. In general, the vehicle 18 may be divided into various zones20 a, 20 b, and 20 c (“20”). Zone 20 a generally corresponds to a driverzone which is an area in the vehicle 18 that is occupied by a driver.The zone 20 b-20 c generally corresponds to a passenger zone which is anarea in the vehicle 18 that is occupied by passenger(s). Specifically,zone 20 b may be a front of the vehicle that is occupied by a passengerand zone 20 c may be a rear of the vehicle that is occupied by at leastone passenger. In some cases, it is desirable to restrict OCD usage fordrivers in the driver zone 20 a to avoid driver distraction. However,such an implementation should recognize when the OCD 16 is located inthe passenger zone 20 b or 20 c, the vehicle 18 must avoid restrictingusage of the OCD 16 for passengers (i.e., non-drivers). A plurality oftransceivers 22 a-22 c (“22”) is positioned in the zone 20 a-20 c,respectively. In one example, the transceiver 22 a may be positioned ina driver's seat (not shown) in the zone 20 a of the vehicle 18, thetransceiver 22 b may be positioned at a front passenger's seat (notshown) in the zone 20 b of the vehicle 18, and the transceiver 22 c maybe positioned in a rear seat (not shown) in the zone 20 c of the vehicle18. The transceivers 22 and a controller (not shown in FIG. 2), may bedefined as an advertiser 12 and transmit/receive information to/from theOCD 16 in a BLE environment to ascertain the location of the variousOCDs 16 in the vehicle 18. These aspects will be described in moredetail below. It is recognized that there may be any number oftransceivers 22 positioned in the vehicle as well as any number of zones20 that are established in the vehicle 18.

FIG. 3 depicts an apparatus 30 for determining a location of the OCD 16in the vehicle 18 in accordance to one embodiment. The apparatus 30generally includes the transceivers 22, a controller 32, and apowertrain control module (PCM) 34. It is recognized that thetransceivers 22 a-22 c are positioned in zones 20 a-20 c, respectively.The controller 32 and the transceivers 22 a-22 c are configured toengage in bi-directional communication, via BLE, with the OCDs 16 a-16n. The controller 32 is configured to determine the location of theOCD(s) 16 through the bi-directional communication with the OCDs 16. Thecontroller 32 is configured to notify the various OCDs 16 a-16 n as towhich zone 20 they are located in. The controller 32 is furtherconfigured to notify the OCD 16 that is in the driver zone 20 a when thevehicle 18 is in a “driver mode” and a “stationary mode” or whether thevehicle 18 has transitioned to an OFF state. The driver mode generallycorresponds to the condition in which the vehicle 18 is moving (i.e.,when vehicle speed is greater than a predetermined threshold). The PCM34 is configured to transmit information indicative of either the speedof the vehicle or transmission status (e.g., Park, Neutral, Reverse,Low, or Drive) to the controller 32. The controller 32 will notify theOCD(s) 16 when the vehicle 18 is moving based on the information fromthe PCM 34.

In the event the vehicle 18 is moving (e.g., vehicle speed greater thanthe predetermined threshold, or vehicle is moving based on transmissionstatus), then the controller 32 controls the transceivers 22 a-22 c totransmit data on the signal ADV to the OCDs 16 in the vehicle 18 (or inthe zones 20 a-20 c) that the vehicle 18 is moving. The controller 32may then assess the signal strength for each signal (e.g., see signalSCAN_REQ) received back from the various OCDs 16 to determine thelocation of the OCD 16 in the corresponding zone 20. Once the controller32 determines the location (or zone 20) for each OCD 16, the controller32 notifies each OCD 16 as to its location in the vehicle 18 via asignal SCAN_RSP. Any OCD 16 that is detected to be in the driver zone 20a may then impose restrictions to restrict usage if the vehicle 18 is inthe driver mode. The controller 32 is generally configured to establisha database (not shown) for the OCD(s) 16 detected in the vehicle 18 andto further employ a calculated exponentially weighted average for thesignal strength of each signal SCAN_REQ as received from the OCD(s) 16in relation to the transceivers 22 a-22 c to determine the locations ofthe OCD(s) 16 in the vehicle 18.

The controller 32 includes a BLE advertiser management module 36 thatmanages the transmission of the signal ADV to the OCDs 16. For example,the module 36 may transmit the signal ADV as a periodic advertisementthat includes, but not limited to the following characteristics (i) BLEID (unique ID assigned to all BLE devices per Bluetooth specifications);(ii) a name assigned by the manufacturer (e.g. red Taurus) to thevehicle 18, (iii) a type, which in this case is manufacturer specific(In Vehicle Location System (“IVLS”)), and (iv) vehicle status, which ismanufacturer specific (e.g., vehicle is stationary, vehicle is inmotion, or transition of ignition status from ON to OFF). The IVLSindicator is unique to vehicles and in this case, the receipt of theIVLS at the OCD 16 will indicate to the OCD 16 that the OCD 16 iscommunicating with a vehicle 18 instead of another device such as forexample a printer, portable speaker, etc. The IVLS designation may allowthe OCD 16 to filter and prioritize advertisements from the vehicle 18.

Each OCD 16 will periodically scan for BLE advertisements (or for thesignal ADV) from the controller 32. Each OCD 16 may also initiate a scanduring wake up due to user input. If the OCD 16 detects two or morereceptions of the signal ADV from the various transceivers 20 a-20 c,then the OCD 16 may filter out the signal ADV (or advertisement) with ahighest signal strength and then conduct various tests to determine ifthe OCD 16 is in the vehicle 18 that transmitted the signal ADV (or theadvertisement). It must be noted that it is possible for one or moreOCDs 18 in the vehicle 18 to receive the signal ADV from vehicle(s) thatneighbor or are in close proximity to the vehicle 18. Thus, the OCD 16(or a BLE scanner management module 35 a, 35 b, or 35 c (“35”) withinthe OCD 16) is required to make a determination as to whether the OCD 16is located in the vehicle 18 that actually transmitted the signal ADV.First, the OCD 16 will determine if it has a history with the vehicle18. In general, the OCD 16 develops or builds up a history of knownvehicle that the OCD 16 can use to quickly identify vehicles. If the OCD16 determines that it has a history with the vehicle 18, then the OCD 16via the BLE scanner management module 35 may transmit a series of scanrequests (or a series of transmissions of the signal SCAN_REQ) to theadvertiser (e.g., the controller 32 and the transceivers 22).

If the OCD 16 does not have a history with the vehicle 18 (e.g., firsttime the OCD 16 receives the signal ADV from the vehicle 18), then theOCD 16 will check the vehicle status on the signal ADV to determine ifthe vehicle 18 is in motion (i.e., the vehicle is in the driver mode).It is recognized that the OCD 16 will check vehicle status (e.g.,vehicle in motion or vehicle transitions to OFF, etc.) irrespective ofwhether it has a history with the OCD 16. If so, the OCD 16 will waitfor a short period of time to determine if a second transmission of thesignal ADV has been transmitted from the controller 32. If the OCD 16receives the signal ADV again within the short period of time, then theOCD 16 determines that it is traveling in the vehicle 18. Once the OCD16 associates itself with an IVLS indicator on the signal ADV from thevehicle 18, then the OCD 16 transmit a series of scan requests (ortransmits the signal SCAN_REQ a number of times) to the vehicle 18 atminimum power. The more transmissions the controller 32 receives fromthe OCD 16, the more samples the controller 32 can process to determinethe location of the OCD(s) 16. It is recognized that each OCD 16transmits a series of scan requests at minimal power to ensure signalstrength disparity among the transceivers 22 in the vehicle 18. As notedabove, the transceivers 22 are each located in a corresponding zone inthe vehicle 18. Thus, if the OCD 16 is located in the driver zone 20 aand transmits the signal SCAN_REQ, a disparity in terms of signalstrength will be present at the different transceivers 22 and thetransceiver 22 a in the driver zone 20 a will receive the signalSCAN_REQ at the highest signal strength and the transceivers 22 in thepassenger zones 22 b-22 c will receive the signal SCAN_REQ at a lowersignal strength. The controller 32 includes a BLE location module 38 todetermine the received signal strength for each receipt of the signalSCAN_REQ.

As noted above, the controller 32 is configured to receive the signalSCAN_REQ from each OCD 16. If the controller 32 includes historical dataassociated with the OCD 16 (i.e., this corresponding OCD 16 has been inthe vehicle 18 previously), then the controller 32 retrieves historicalmetrics with respect to the OCD 16. If not, then the controller 32creates a new database for the newly detected OCD 16. The controller 32(or the BLE location module 38) may then calculate an exponentiallyweighted average (“EWA”) for the signal strength for each receivedsignal SCAN_REQ received from the OCD(s) 16 that is received at each ofthe selectively placed transceivers 22. It is recognized that thecontroller 32 may utilize any form of mathematical manipulation and/orfiltering to process the determined signal strength. The EWA as employedby the controller 32 is provided for illustrative purposes.

The controller 32 may then conduct a series of tests to determine themost likely position of the OCD 16 within the vehicle 18. For example,the controller 32 may check the total number of samples taken at each ofthe transceivers 22 in the vehicle 18. If the controller 32 determinesthat there aren't an adequate number of samples, then the controller 32may designate the position of the OCD 16 as “indeterminate”. Otherwise,the controller 32 compares a disparity among EWA metrics to a thresholdto determine the most likely position. For example, if the EWA attransceiver 22 b is greater than the EWA at transceiver 22 a by amagnitude of t₁, then the controller 32 determines that the OCD 16 ismost likely near or in the zone 20 b (e.g., the front passenger zone)and assign the position as “passenger”. The controller 32 transmits thelocation information on the signal SCAN_RSP to the OCD 16 in the zone 20b. Likewise, if the EWA at the transceiver 22 c is greater than the EWAat the transceiver 22 a by a magnitude of t₂, then the controller 32determines that the OCD 16 is most likely near or in the zone 20 c(e.g., the rear passenger zone) and assign the position as “passenger”.The controller 32 transmits the location information on the signalSCAN_RSP to the OCD 16 c in the zone 20 c. If the EWA at the transceiver22 a is greater than t₃, then the controller 32 determines that the OCD16 is most likely in the zone 20 a (e.g., the driver zone). Otherwise,it will assign the position as “indeterminate.” For example, in thiscase, the OCD 16 may be outside of the vehicle 18. Once the most likelyposition is determined by the controller 32, the controller 32 transmitsthe signal SCAN_RSP to the OCD 16 to notify the same of its position(e.g., the in-vehicle-location (position) data) in the vehicle 18.

The OCD 16 extracts the in-vehicle-location (position) data from thesignal SCAN_RSP once received. If the position is “passenger”, then theOCD 16 operates in “normal” mode (i.e., full functionality with norestrictions). If the position is “driver” (i.e., the OCD 16 is in thedriver zone 20 a), then the OCD 16 will enter into the “driver mode” ifthe vehicle 18 is moving. While in driver mode, the OCD 16 may modifyits user interface of select features to accommodate a driver. Thesefeatures may include, but not limited to, simplifying menu options,enlarging icons, etc. Additionally, the OCD 16 may also restrict certainfeatures that are deemed distractive to the driver such as games,videos, manual texting, etc.

As long as the user is actively using the OCD 16, such an OCD 16 willperiodically ping the controller 32 so as to ascertain its position inthe vehicle 18. If the controller 32 ceases to respond, or if thecontroller 32 transmits the signal ADV indicating that the ignitionstatus of the vehicle transitions to OFF, then the OCD 16 will clear allcounters and return to normal operation. The counters may be used tolimit scan request attempts at the OCD 16. Likewise, when the vehicle 18shuts down, the controller 32 transmits a final signal ADV indicatingthat the ignition status has transitioned to OFF and clears all scannerdatabases. These aspects and others will be described in more detail inconnection with FIGS. 5 and 6.

FIG. 4 depicts an apparatus 50 for determining the location of the OCDs16 in the vehicle 18 in accordance to one embodiment. The apparatus 50differs from the apparatus 30 of FIG. 3 in that the OCDs 16 each includethe BLE location module 38 for determining its corresponding location inthe vehicle 18 based on the receipt of the signal ADV from thecontroller 32. The controller 32 and the transceivers 22 serve as theadvertiser and the OCDs 16 each serve as the scanner. The BLE locationmodule 38 processes the advertisements (i.e., the signal ADV) from thestrategically placed transceivers 22. The controller 32 in this case,may be a simple advertiser and may not service any scan request (e.g.,signal SCAN_REQ) from the OCDs 16.

The controller 32 initiates the communication with the OCD 16 byperiodically transmitting the signal ADV that includes the following:(i) a unique ID for the controller 32 in addition to a unique ID foreach transceiver 22 (i.e., the unique ID is assigned to all BLE devicesper Bluetooth specifications), (ii) a name assigned by the vehiclemanufacturer (e.g., red Taurus)(or alternatively, a vehicleidentification number (VIN), (iii) a type, which in this case ismanufacturer specific (In Vehicle Location System—IVLS), (iv)manufacturing specific data such as vehicle status (e.g., vehicle isstationary, vehicle is in motion, or transition of ignition status fromON to OFF), zone information (e.g., driver zone (or zone 20 a), frontpassenger zone (or zone 20 b), or rear passenger zone (or zone 20 c)),alternatively the zone information corresponds to the particular zone 20each corresponding transceiver 22 is positioned in, and a total numberof advertisers in the vehicle 18.

Each OCD 16 will periodically scan for the signal ADV from the varioustransceivers 22. Each OCD 16 is configured to perform a series of teststo determine if the OCD 16 is in the vehicle 18. First, the OCD 16 willidentify a complete set of advertisements (or a complete set of thesignals ADV) based on the total number of the advertisers in the vehicle18. For example, in this case, the OCD 16 determines if it has receiveda signal ADV from each transceiver 22 in each zone 20. If the OCD 16 hasa prior history with the vehicle 18, then the OCD 16 will associateitself with the vehicle 18 and initiate the in-vehicle-location process.If not, the OCD 16 will examine whether the vehicle 18 is in motion asprovided on the signal ADV from the vehicle 18. The OCD 16 will thenconduct another scan of the various signal ADV(s) that are received totry and determine if it is in a known vehicle 18. If the OCD 16 cannotascertain that it is in a known vehicle 18, then the OCD 16 will conductanother scan so long as the user is still using the OCD 16 . . . .Otherwise, the OCD 16 will associate itself with the advertiser (ortransceiver 22) that transmits the signal ADV with the highest receivedsignal strength (RSS) and begins the in-vehicle-location process.

Once the OCD 16 associates itself with the vehicle 18, the OCD 16conducts a series of tests to determine the most likely position of theOCD 16 within the vehicle 18. First, the OCD 16 (or the BLE locationmodule 38) calculates the signal strength for each signal ADV asreceived from the corresponding transceiver 22 and then determines theEWA for each signal ADV that is received. As noted above, it isrecognized that any form of mathematical manipulation and/or filteringmay be used to process the determined signal strength. The EWA asemployed by the OCD 16 is provided for illustrative purposes. The OCD 16may then check the total number of samples advertisements (i.e., totalnumber of received signals (or signal ADV) from each transceiver 22. Ifa sufficient number of samples have not been received, then the OCD 16will determine that its position in the vehicle 18 as “indeterminate”.Otherwise, the OCD 16 will compare the disparity of the EWA metrics to athreshold to determine the most likely position. For example, if the EWAat the transceiver 22 b (in zone 20 b (passenger front zone)) is greaterthan the EWA at the transceiver 22 a (in zone 20 a (driver zone)) by amagnitude of t₁, then the OCD 16 will determine that it is most likelynear the transceiver 22 b (e.g., in the front passenger's seat) andassign its location as being in the zone 20 b (or in the front passengerzone). Likewise, if the EWA at the transceiver 22 c is greater than theEWA at transceiver 22 a by a magnitude of t₂, then the OCD 16 willdetermine that it is most likely near the transceiver 22 c (e.g., inrear seat) and assign its location as being in zone 20 c. If neither theEWA is significantly greater than the EWA at the transceiver 22 a, thenthe OCD 16 will determine if the EWA at transceiver 22 a is significantenough to assign the position as “driver” (or in the zone 20 a).Otherwise, the OCD 16 will assign the position as “indeterminate”.

If the OCD 16 determines that the location or position is in the zone 20b or 22 c, then the OCD 16 operates in “normal” mode (e.g., fullfunctionality). If the OCD 16 determines that the location or positionis in the zone 20 a (e.g. driver zone), then the OCD 16 enters into thedriver mode. While in driver mode, the OCD 16 may modify its userinterface of select features to accommodate a driver. This may include,but not limited to, simplifying menu options, enlarging icons, etc.).The OCD 16 may also restrict certain features deemed distractive to thedriver such as games, videos, manual texting, etc.

As long as the user is actively using the OCD 16, the OCD 16 willperiodically scan the advertisements (or the signal ADV from the vehicle18) to monitor its own position or location. If the OCD 16 stopsreceiving the signal ADV, the OCD 16 will clear all of the metrics andreturn to normal operation. If the OCD 16 receives informationindicating that the ignition is “OFF”, then the OCD 16 returns to normaloperation.

FIGS. 5a-5c depict a method 60 for determining the location of theOCD(s) 16 utilizing the apparatus 30 of FIG. 3 in accordance to oneembodiment. The method 60 generally illustrates various operationsexecuted in connection with the OCD 16 in FIG. 3.

In operation 62, the controller 32 receives a signal from a body controlmodule (not shown) in the vehicle 18 that indicates that an ignitionswitch (also not shown) is in a “RUN” position.

In operation 64, the controller 32 determines whether ignition statusfor the ignition switch has transitioned to an “OFF” state. If thiscondition is true, then the method 60 proceeds to operations 66 and 68.If not, then the method 60 proceeds to operation 70.

In operation 66, the controller 32 clears data corresponding to receivedsignal strength values that were generated in connection with receivingthe signal SCAN_REQ from the various OCD(s) 16 in the vehicle 18.

In operation 68, the controller 32 transmits (e.g., via the transceivers22) the signal ADV to the OCD(s) 16 that the vehicle 18 has shut off. Inthis case, any OCD 16 that is detected to be in the vehicle 18 canresume normal operation.

In operation 70, the controller 32 determines whether the vehicle 18 ismoving based on information provided by the PCM 34 (e.g., vehicle status(vehicle speed >x or transmission status=R, D, L). If this condition isnot true, then the method 60 proceeds to operation 72. If true, then themethod 60 proceeds to operation 74.

In operation 72, the controller 32 transmits the signal ADV (e.g., viathe transceivers 22) to the OCD(s) 16. The signal ADV in this case willindicate to the OCD(s) 16 that the vehicle 18 is stationary.

In operation 74, the controller 32 transmits the signal ADV (e.g., viathe transceivers 22) to the OCD(s) 16. The signal ADV in this case willindicate to the OCD(s) 16 that the vehicle 18 is moving (or the vehicle18 is in the driver mode).

In operation 76, the controller 32 initiates a timer to determinewhether the OCD(s) 16 has responded back to the signal ADV with thesignal SCAN_REQ.

In operation 80, the controller 32 determines whether the signalSCAN_REQ has been received from the OCD(s) 16. As noted above, theOCD(s) 16 may transmit the signal SCAN_REQ in response to receiving thesignal ADV. Each OCD 16 is arranged to transmit the signal SCAN_REQ at alow transmission power to create diversity at the transceivers 22. Ifthe controller 32 has determined that one or more of the signalsSCAN_REQ has been received, then the method 60 moves to operation 82. Ifnot, then the method 60 moves to operation 78.

In operation 78, the controller 32 determines whether the timer as setin connection with operation 76 has expired. If this condition is true,then the method 60 proceeds to operation 79. This condition indicatesthat there may not be any OCD(s) 16 in the vehicle 18. If the conditionof operation 78 is false, then the method 60 moves back to operation 80.

In operation 79, the controller 32 resets the timer and moves back tooperation 64 to determine ignition status for the vehicle 18.

In operation 82, the controller 32 determines whether the receivedsignal SCAN_RST has an identification that was previouslyreceived/recognized by the controller 32 (i.e., by the vehicle 18). Ifthis condition is true, then the method 60 moves to operation 86. Thiscondition indicates that the OCD(s) 16 have been previously used in thevehicle 18 in the past. If the condition of operation 82 is not true,then the method 60 moves to operation 84. This condition indicates thatthis may be the first time the OCD 16 has been in the vehicle 18 asthere is no historical data available on the OCD 16.

In operation 84, the controller 32 establishes a new database for theOCD 16 that is first used in the vehicle 18 for the first time.Specifically, the controller 32 establishes the database to storeinformation corresponding to the received signal strength (RSS_(total))at the transceiver 22 a (or BLE₁ _(_)RSS_(total) as shown in FIG. 5),the received signal strength (RSS_(total)) at the transceiver 22 b (orBLE₂ _(_)RSS_(total) as shown in FIG. 5), and the received signalstrength (RSS_(total)) at the transceiver 22 c (or BLE₃ _(_)RSS_(total)as shown in FIG. 5). In addition, the controller 32 will store a countfor each signal strength measurement that is performed at the vehicle 18(e.g., BLE₁ _(_)Cnt, BLE₂ _(_)Cnt, and BLE₃ _(_)Cnt). The controller 32will also store the exponentially weighted average (BLE₃ _(_)EWA_(BLE1)_(_) _(Cnt)) for the transceiver 22 a, an exponentially weighted average(BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt)) for the transceiver 22 b, and anexponentially weighted average (BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)) for thetransceiver 22 c. The controller 32 includes a filter to determine theexponentially weighted average at each transceiver 22. The controllerapplies a variable a to determine the amount of filtering that isapplied. For example, the variable a may correspond to a value between 0and 1 and indicates the amount of filtering that is applied (e.g., ifα=0, then no filtering is performed whereas if α=1, then a maximumamount is performed).

In operation 86, the controller 32 initiates the process or retrievingdata for the received signal strength or (BLE₁ _(_)RSS_(total)), (BLE₂_(_)RSS_(total)), and (BLE₃ _(_)RSS_(total)), the count for each signalstrength measurement or (BLE₁ _(_)Cnt), (BLE₂ _(_)Cnt), and (BLE₃_(_)Cnt), and the EWA (BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt)), (BLE₂_(_)EWA_(BLE2) _(_) _(Cnt)), (BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)) for theOCD 16 that has a history with the vehicle 18.

In operation 88, the controller 32 increments the count for BLE₁_(_)Cnt. It is recognized that the controller 32 measures the signalstrength of the signal at the transceiver 22 a to generate a count ifthe controller 32 has not received a signal from the OCD 16, or toincrement a previous count if the controller 32 detects that it hasreceived a previous signal from the OCD 16.

In operation 90, the controller 32 compares the incremented count toBLE₁ _(_)Cnt to determine if the overall count has exceeded a predefinedthreshold. In this case, it is desirable to have enough samples beforecalculating the EWA for the transceiver 22 a. If this condition is true,then the method 60 proceeds to operation 96. If not, then the method 60proceeds to operation 92.

In operation 92, the controller 32 uses the latest received sample(e.g., RSS_(BLE1) _(_) _(Cnt)) to determine the received signal strengthBLE₁ _(_)RSS_(total) at the transceiver 22 a.

In operation 94, the controller 32 calculates an initial EWA (i.e., asimple mean) (e.g., (BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt)) for thetransceiver 22 a based on the received signal strength BLE₁_(_)RSS_(total) and on the count BLE₁ _(_)Cnt.

In operation 96, the controller 32 calculates a first EWA (e.g., (BLE₁_(_)EWA_(BLE1) _(_) _(Cnt)) for the transceiver 22 a after determiningthat the incremented count BLE₁ _(_) _(Cnt) exceeds the predefinedthreshold (see operation 90). The first EWA as calculated in operation96 differs from the initial EWA in that the initial EWA was based on acount that is not greater than the predefined threshold. Thus, becausethe first EWA is based on a sufficient number of samples, this value mayhave a higher confidence rate than the initial EWA. In general, thecontroller 32 applies a low pass filter based on:BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt)=α*BLE₁ _(_)EWA_(BLE1) _(_)_(Cnt-1)+(1−α)RSS_(BLE1) _(_) _(Cnt)  (EQ. 1)

where BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt-1) corresponds to a previousexpected weighted average of previously measured strength values at thetransceiver 22 a and RSS_(BLE1) _(_) _(Cnt) corresponds to the mostrecent signal strength of the received signal at the transceiver 22 a.

In operation 98, the controller 32 determines whether the signalSCAN_REQ was received at the transceiver 22 b from the OCD 16. If thiscondition is true, then the method 60 moves to operation 100. If not,then the method 60 moves to operation 110.

In operation 100, the controller 32 increments the count for BLE₂_(_)Cnt. It is recognized that the controller 32 measures the signalstrength of the signal at the transceiver 22 b to generate a count ifthe controller 32 has not received a signal from the OCD 16, or toincrement a previous count if the controller 32 detects that it hasreceived a previous signal from the OCD 16.

In operation 102, the controller 32 compares the incremented count toBLE₂ _(_)Cnt to determine if the overall count has exceeded thepredefined threshold. Again, it is desirable to have enough samplesbefore calculating the EWA for the transceiver 22 b. If this conditionis true, then the method 60 proceeds to operation 108. If not, then themethod 60 proceeds to operation 104.

In operation 104, the controller 32 uses the latest received sample(e.g., RSS_(BLE2) _(_) _(Cnt)) to determine the received signal strengthBLE₂ _(_)RSS_(total) at the transceiver 22 b.

In operation 106, the controller 32 calculates an initial EWA (i.e., asimple mean) (e.g., (BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt)) for thetransceiver 22 b based on the received signal strength BLE₂_(_)RSS_(total) and on the count BLE₂ _(_)Cnt.

In operation 108, the controller 32 calculates a second EWA (e.g., (BLE₂_(_)EWA_(BLE2) _(_) _(Cnt)) for the transceiver 22 b after determiningthat the incremented count BLE₂ _(_) _(Cnt) exceeds the predefinedthreshold (see operation 102). The second EWA as calculated in operation108 differs from the initial EWA in that the initial EWA was based on acount that is not greater than the predefined threshold. Thus, becausethe second EWA is based on a sufficient number of samples, this valuemay have a higher confidence rate than the initial EWA. In general, thecontroller 32 applies a low pass filter based on:BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt)=α*BLE₂ _(_)EWA_(BLE2) _(_)_(Cnt-1)+(1−α)RSS_(BLE2) _(_) _(Cnt)  (EQ. 2)

where BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt-1) may correspond to a previousexpected weighted average of previously measured strength values at thetransceiver 22 b and RSS_(BLE2) _(_) _(Cnt) corresponds to the mostrecent signal strength of the received signal at the transceiver 22 b.

In operation 110, the controller 32 determines whether the signalSCAN_REQ was received at the transceiver 22 c from the OCD 16. If thiscondition is true, then the method 60 moves to operation 112. If not,then the method 60 moves to operation 122.

In operation 112, the controller 32 increments the count for BLE₃_(_)Cnt. It is recognized that the controller 32 measures the signalstrength of the signal at the transceiver 22 c to generate a count ifthe controller 32 has not received a signal from the OCD 16, or toincrement a previous count if the controller 32 detects that it hasreceived a previous signal from the OCD 16.

In operation 114, the controller 32 compares the incremented count toBLE₃ _(_)Cnt to determine if the overall count has exceeded thepredefined threshold. Again, it is desirable to have enough samplesbefore calculating the EWA for the transceiver 22 c. If this conditionis true, then the method 60 proceeds to operation 120. If not, then themethod 60 proceeds to operation 116.

In operation 116, the controller 32 uses the latest received sample(e.g., RSS_(BLE3) _(_) _(Cnt)) to determine the received signal strengthBLE₃ _(_)RSS_(total) at the transceiver 22 c.

In operation 118, the controller 32 calculates an initial EWA (i.e., asimple mean) (e.g., (BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)) for thetransceiver 22 c based on the received signal strength BLE₃_(_)RSS_(total) and on the count BLE₃ _(_)Cnt.

In operation 120, the controller 32 calculates a third EWA (e.g., (BLE₃_(_)EWA_(BLE3) _(_) _(Cnt)) for the transceiver 22 c after determiningthat the incremented count BLE₃ _(_) _(Cnt) exceeds the predefinedthreshold (see operation 114). The third EWA as calculated in operation120 differs from the initial EWA in that the initial EWA was based on acount that is not greater than the predefined threshold. Thus, becausethe third EWA is based on a sufficient number of samples, this value mayhave a higher confidence rate than the initial EWA. In general, thecontroller 32 applies a low pass filter based on:BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)=α*BLE₃ _(_)EWA_(BLE3) _(_)_(Cnt-1)+(1−α)RSS_(BLE3) _(_) _(Cnt)  (EQ. 3)

where BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt-1) may correspond to a previousexpected weighted average of previously measured strength values at thetransceiver 22 c and RSS_(BLE3) _(_) _(Cnt) corresponds to the mostrecent signal strength of the received signal at the transceiver 22 c.

In operation 122, the controller 32 compares each incremented count(e.g., from each transceiver 22 a-22 c) to BLE₂ _(_) _(Cnt), BLE₂ _(_)_(Cnt), and BLE₃ _(_) _(Cnt) to the predefined threshold, k. In thiscase, it is desirable to have a sufficient number of samples prior todetermining the location of the OCD 16. If this condition is true, thenthe method 60 moves to operation 124. If not, then the method 60 movesto operation 132.

In operation 132, the controller 32 transmits on the signal SCAN_RSPthat the location of the OCD 16 is indeterminate and the method 60proceeds back to operation 80.

In operation 124, the controller 32 compares the values for the firstEWA (e.g., (BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt))) and the second EWA (e.g.,(BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt))). For example, the controller 32determines whether:BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt)−BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt) ≥t ₁

where t₁ corresponds to a first threshold value.

If this condition is true, then the method 60 proceeds to operation 134.If not, then the method 60 proceeds to operation 126.

In operation 134, the controller 32 transmits on the signal SCAN_RSPthat the OCD 16 is located in a passenger zone 20 b and the method 60proceeds back to operation 80.

In operation 126, the controller 32 compares the first EWA (e.g., BLE₁_(_)EWA_(BLE1) _(_) _(Cnt)) to the third EWA (e.g., (BLE₃ _(_)EWA_(BLE3)_(_) _(Cnt))). For example, the controller 32 determines whether:BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)−BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt) ≥t ₂

where t₂ corresponds to a second threshold value.

If this condition is true, then the method 60 proceeds to operation 134.If not, then the method 60 proceeds to operation 128.

In operation 128, the controller 32 determines whether:BLE_(t) _(_)EWA_(BLE1) _(_) _(Cnt)≥t₃

where t₃ corresponds to a third threshold value.

If this condition is true, then the method 60 proceeds to operation 130.If not, then the method 60 proceeds to operation 132.

In operation 130, the controller 32 transmits on the signal SCAN_RSPthat the OCD 16 is located in a driver zone 20 a and the method 60proceeds back to operation 80.

FIGS. 6a-6c depict a method 150 for determining the location of theOCD(s) 16 also utilizing the apparatus 30 of FIG. 3 in accordance to oneembodiment. The method 150 generally illustrates various operationsexecuted in connection with the OCD 16 in FIG. 3.

In operation 152, the OCD 16 initiates a timer.

In operation 154, the OCD 16 determines whether it is being used by auser. For example, the OCD 16 determines whether it is receiving acommand to perform a task from a user (e.g., touch input, physicallymoving about a cabin of the vehicle 18, etc.). If this condition is nottrue, then the method 150 moves to operation 156. If so, then the method150 moves to operation 158.

In operation 156, the OCD 16 determines whether the timer has expired ifa user input was not received. If the timer has not expired, then themethod 150 moves back to operation 154. If so, then the method 150 movesto operation 158.

In operation 158, the OCD 16 monitors for the signal ADV from eachtransceiver 22 the vehicle 18.

In operation 160, the OCD 16 determines whether the signal(s) ADV asreceived from the transceivers 22 include a known identification of theadvertiser (or controller 32 and/or transceiver 22) (e.g., the BLE ID (aunique ID assigned to all BLE devices per Bluetooth specifications). Ifthis condition is true, then the method 150 moves to operation 162. Ifnot, then the method 150 moves to operation 164.

In operation 162, the OCD 16 updates its history (i.e., updates thehistory of known IVLS advertisements) and moves to operation 184 whichwill be described in more detail below.

In operation 164, the OCD 16 determines whether the vehicle 18 is inmotion (e.g., in the driver mode) based on the signal ADV. If thiscondition is true, then the method 150 moves to operation 166. If not,then the method 150 moves back to operation 152.

In operation 166, the OCD 16 identifies which signal ADV from thevehicle 18 (or controller 32) exhibits a first largest signal strengthwhen received at the OCD 16. In this operation, the transceiver 22 thattransmits the signal ADV at the largest signal strength is set toVEH_ID_(x).

In operation 168, the OCD 16 implements a time delay.

In operation 172, the OCD 16 monitors for the signal ADV from eachtransceiver 22 the vehicle 18. The OCD 16 is attempting to correlate toa vehicle 18.

In operation 174, the OCD 16 determines whether the signal(s) ADV asreceived from the transceivers 22 include a known identification of theadvertiser (or controller 32 and/or transceiver 22) (e.g., the BLE ID (aunique ID assigned to all BLE devices per Bluetooth specifications). Ifthis condition is true, then the method 150 moves to operation 176. Ifnot, then the method 150 moves to operation 152.

In operation 176, the OCD 16 again identifies which signal ADV from thecorresponding vehicle 18 (or controller 32) exhibit a second largestsignal strength when received at the OCD 16. In this operation, thetransceiver 22 that transmits the signal ADV at the largest signalstrength is set to VEH_ID_(y).

In operation 178, the OCD 16 compares VEH_ID_(x) (see operation 166above) to VEH_ID_(y) to determine if they are equal to one another. Ifthis condition is not true, then the method 150 proceeds to operation180. If this condition is true, the method 150 proceeds to operation 182which indicates that the advertisements received at the OCD 16 are fromthe same vehicle 18.

In operation 180, the OCD 16 determines whether the vehicle 18 is inmotion (e.g., in the driver mode) based on the signal ADV as received inoperation 174. If this condition is true, then the method 150 moves tooperation 183. If not, then the method 150 moves back to operation 152.

In operation 183, the OCD 16 sets the VEH_ID_(x) to the VEH_ID_(y) andthe method 150 proceeds back to operation 168.

In operation 182, the OCD 16 updates its history of known vehicles.

In operation 184, the OCD 16 transmits the signal SCAN_REQ at a lowpower level to the transceivers 22 to create a signal strength disparityat the transceivers 22. The signal SCAN_REQ may also include the powerat which the OCD 16 transmitted the signal SCAN_REQ. This enables thecalculation of the attenuation. It is recognized that the OCD 16 cantransmit a burst of the signals SCAN_REQ.

In operation 186, the OCD 16 increments a counter corresponding to eachtransmission of the signal SCN_REQ.

In operation 188, the OCD 16 determines whether the counter of operation186 has exceeded a first predetermined counter value. If this conditionis true, then the method 150 moves to operation 190. If not, then themethod 150 moves to operation 188. Operation 188 generally correspondsto the condition in which the OCD 16 is configured to transmit thesignal SCAN_REQ on multiple occasions (e.g., in a burst) to ensurereceipt and to ensure enough sample have been received at thetransceivers 22.

In operation 190, the OCD 16 determines whether the signal SCAN_RSP hasbeen received (i.e., from the transceivers 22 (or the controller 32)).If this condition is true, then the method 150 moves to operation 192.If not, then the method 150 moves to operation 220 where the OCD 16increases a scan attempt counter and to operation 222 where the OCD 16compares the scan attempt counter to a second predetermined countervalue to determine if all transmissions of the signal SCAN_REQ wheretransmitted with no subsequent reception at the vehicle 18.

In operation 224, the OCD 16 resets the scan attempt counter when thescan attempt counter is determined to exceed the second predeterminedcounter value. Thereafter, in operation 226, the OCD 16 will operate inthe normal mode as it can be implied that the OCD 16 has left thevehicle 18.

In operation 192, the OCD 16 determines whether the signal SCAN_RSPindicates that the position of the OCD 16 is indeterminate. If thiscondition is true, then the method 150 moves to operation 194. If not,then the method 150 moves to operation 196.

In operation 194, the OCD 16 uses the last known location that wasreceived on a previous transmission of the signal SCAN_RSP.

In operation 196, the OCD 16 determines whether the signal SCAN_RSPindicates that the position of the OCD 16 is in the driver zone 20 a. Ifthis condition is true, then the method 150 moves to operation 198. Ifnot, then the method 150 moves to operation 200.

In operation 198, the OCD 16 detects that it is located in the driverzone 20 a and may reduce functionality to reduce driver distraction.

In operation 202, the OCD 16 implements a time delay to reduce batteryconsumption and/or to periodically check location during use by theuser.

In operation 204, the OCD 16 monitors the signal ADV as received fromthe vehicle 18 to determine if the ignition status has transitioned fromON to OFF. If this condition is true, then the method 150 proceeds tooperation 208 and the OCD 16 resets a scan attempt counter (seeoperation 208) and enters into a normal mode where there are norestrictions in place. It is recognized that if this condition is true,this will serve as an interrupt the OCD 16. When the ignition switchtransitions to OFF, the OCD 16 immediately returns to normal operationupon receiving this condition as an advertisement.

In operation 206, the OCD 16 determines whether it is being used by theuser. If so, then the method 150 moves back to operation 184. If not,then the method 105 moves to operation 208.

FIG. 7 depicts a method 250 for determining the location of the OCD(s)16 utilizing the apparatus 50 of FIG. 4 in accordance to one embodiment.The method 250 generally illustrates various operations executed inconnection with the controller 32 in FIG. 4.

In operation 252, the controller 32 receives a signal from a bodycontrol module (not shown) in the vehicle 18 that indicates that anignition switch (also not shown) is in a “RUN” position.

In operation 254, the controller 32 determines whether ignition statusfor the ignition switch has transitioned to an “OFF” state. If thiscondition is true, then the method 250 proceeds to operation 256. Innot, then the method 250 proceeds to operation 258.

In operation 256, the controller 32 may shut down in response todetermining that the ignition status has transitioned to the “OFF”state. The controller 32 provides an indication of the vehicle shuttingdown on the signal ADV (e.g., vehicle status).

In operation 258, the controller 32 determines whether the vehicle 18 ismoving based on information provided by the PCM 34 (e.g., vehicle status(vehicle speed >x or transmission status=R, D, L). If this condition istrue, then the method 250 proceeds to operation 260. If not, then themethod 250 proceeds to operation 262.

In operation 260, the controller 32 determines that the vehicle 18 is inmotion and transmits the vehicle status on the signal ADV as indicatingthat the vehicle 18 is in motion.

In operation 263, the controller 32 transmits the signal ADV at a lowpower which indicates the BLE ID for the controller 32. The signal ADVincludes the vehicle status which indicates whether the vehicle 18 isstationary, in motion, or has switched OFF. The signal ADV alsoindicates that the vehicle 18 is in motion and further providesinformation corresponding to which zone 20 (e.g., zone 20 a, 20 b, and20 c) the transceiver 22 is positioned in and the total number oftransceivers 22 in the vehicle 18.

In operation 264, the controller 32 transmits the signal ADV at a lowpower which indicates the BLE ID for the controller 32. The signal ADVincludes the vehicle status which indicates whether the vehicle 18 isstationary, in motion, or has switched OFF. The signal ADV alsoindicates that the vehicle 18 is in motion and further providesinformation corresponding to which zone 20 (e.g., zone 20 a, 20 b, and20 c) the transceiver 22 is positioned in and the total number oftransceivers 22 in the vehicle 18.

In operation 266, the controller 32 transmits the signal ADV at a lowpower which indicates the BLE ID for the controller 32. The signal ADVincludes the vehicle status which indicates whether the vehicle 18 isstationary, in motion, or has switched OFF. The signal ADV alsoindicates that the vehicle 18 is in motion and further providesinformation corresponding to which zone 20 (e.g., zone 20 a, 20 b, and20 c) the transceiver 22 is positioned in and the total number oftransceivers 22 in the vehicle 18.

In operation 268, the controller 32 determines whether ignition statusfor the ignition switch has transitioned to an “OFF” state. If thiscondition is true, then the method 250 ends. If not, then the method 250proceeds to operation 270.

In operation 270, the controller 32 initiates a timer for transmittingthe signal ADV. This may set the periodic rate of the transmission ofthe advertisements.

In operation 272, the controller 32 determines whether ignition statusfor the ignition switch has transitioned to an “OFF” state. If thiscondition is true, then the method 250 proceeds to operation 256. Ifnot, then the method 250 proceeds to operation 274.

In operation 274, the controller 32 determines whether the timer hasexpired. If this condition is true, then the method 250 moves tooperation 276. If not, then the method 250 moves to operation 272.

In operation 276, the controller 32 resets the timer and proceeds backto operation 254.

FIGS. 8a-8c depict a method 300 for determining the location of theOCD(s) 16 utilizing the apparatus 50 of FIG. 4 in accordance to oneembodiment. The method 300 generally illustrates various operationsexecuted in connection with the OCD 16 in FIG. 4.

In operation 302, the OCD 16 initializes a scan timer to detect when auser provides an input to use the OCD 16.

In operation 304, the OCD 16 determines whether it is being used by auser. For example, the OCD 16 determines whether it is receiving acommand to perform a task from a user (e.g., touch input, physicallymoving about a cabin of the vehicle 18, etc.). If this condition is nottrue, then the method 300 moves to operation 306. If so, then the method300 moves to operation 310.

In operation 306, the OCD 16 determines whether the scan timer hasexpired if a user input was not received. If the timer has not expired,then the OCD 16 moves back to operation 304. If so, then the method 300moves back to operation 308.

In operation 308, the OCD 16 resets or restarts the scan timer.

In operation 310, the OCD 16 monitors for the signal ADV from eachtransceiver 22 the vehicle 18.

In operation 312, the OCD 16 stores data corresponding to theidentification of the advertiser (or controller 32 and/or transceiver22) (e.g., the BLE ID (a unique ID assigned to all BLE devices perBluetooth specifications)), the name of the vehicle 18, vehicle status(e.g., motion, stationary, or transition to OFF), and a total number oftransceivers 22 in the vehicle 18) from the signal ADV.

In operation 314, the OCD 16 filters out and stores informationcorresponding to the name of the vehicle 18 in a List A which includesinformation received as indicated in operation 312. In other words, theOCD 16 focuses on the vehicle that is most identified in theadvertisement signals (e.g., the signal ADV) from the vehicle 18.

In operation 316, the OCD 16 determines whether a complete list is foundin List A. If not, then the method 300 moves to operation 306. If so,then the method 300 moves to operation 318.

In operation 318, the OCD 16 determines whether a known vehicle 18 hasbeen found. For example, the OCD 16 determines whether it has receivedthe signal ADV previously from the vehicle 18 from a previous ignitioncycle (i.e., whether the OCD 16 has electrically communicated with thevehicle 18 in the past). If this condition is not true, then the method300 moves to operation 322. If the condition is true, then the method300 moves to operation 328.

In operation 320, the OCD 16 filters out information that indicates thatthe vehicle 18 is in motion and then initiates another scan to helpdetermine if it is in the vehicle 18. Or, the OCD 16 filters List A downto complete sets of advertisements when the vehicle status indicatesthat the vehicle 18 is in motion.

In operation 322, the OCD 16 filters complete sets of advertisementsfound in the re-scan and identifies those that are in common with ListA2.

In operation 324, the OCD 16 determines whether a common set ofadvertisements were found between List A2 and B. If this condition istrue, then the method 300 proceeds to 326. If not, then the method 300proceeds back to operation 304.

In operation 326, the OCD 16 associates itself to the vehicle with thehighest signal strength in List B.

In operation 328, the OCD 16 associates itself to the vehicle 18 thathas the highest degree of history with the OCD 16.

In operation 330, the OCD 16 initiates the process for retrieving datafor the received signal strength (or (BLE₁ _(_)RSS_(total)), (BLE₂_(_)RSS) and (BLE₃ _(_)RSS_(total)), the count for each signal strengthmeasurement (or (BLE₁ _(_)Cnt), (BLE₂ _(_)Cnt), and (BLE₃ _(_)Cnt)), andthe ETA (or (BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt)), (BLE₂ _(_)EWA_(BLE2) _(_)_(Cnt)), (BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)) for the OCD 16 that has ahistory with the vehicle 18.

In operation 332, the OCD 16 increments the count for BLE₁ _(_)Cnt. Itis recognized that the OCD 16 obtains the signal strength of the signalat the transceiver 22 a to generate a count if the OCD 16 has notreceived a signal from the vehicle 18, or to increment a previous countif the OCD 16 detects that it has received a previous signal from thevehicle 18.

In operation 334, the OCD 16 compares the incremented count to BLE₁_(_)Cnt to determine if the overall count has exceeded a predefinedthreshold. In this case, it is desirable to have enough samples beforecalculating the EWA for the transceiver 22 a. If this condition is true,then the method 300 proceeds to operation 340. If not, then the method300 proceeds to operation 336.

In operation 336, the OCD 16 uses the latest received sample (e.g.,RSS_(BLE1) _(_) _(Cnt)) to determine the signal strength BLE₁_(_)RSS_(total) at the transceiver 22 a. This is basically the sum ofall samples.

In operation 338, the OCD 16 an initial EWA (i.e., a simple mean) (e.g.,(BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt)) for the transceiver 22 a based on thereceived signal strength BLE₁ _(_)RSS_(total) and on the count BLE₁_(_)Cnt.

In operation 340, the OCD 16 calculates a first EWA (e.g., (BLE₁_(_)EWA_(BLE1) _(_) _(Cnt)) for the transceiver 22 a after determiningthat the incremented count BLE₁ _(_) _(Cnt) exceeds the predefinedthreshold (see operation 334). The first EWA as calculated in operation340 differs from the initial EWA in that the initial EWA was based on acount that is not greater than the predefined threshold. Thus, becausethe first EWA is based on a sufficient number of samples, this value mayhave a higher confidence rate than the initial EWA. In general, the OCD16 applies a low pass filter based on:BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt)=α*BLE₁ _(_)EWA_(BLE1) _(_)_(Cnt-1)+(1−α)RSS_(BLE1) _(_) _(Cnt)  (EQ. 4)

where BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt-1) may correspond to a previousexpected weighted average of previously measured strength values andRSS_(BLE2) _(_) _(Cnt) corresponds to the most recent signal strength.

In operation 342, the OCD 16 increments the count for BLE₂ _(_)Cnt. Itis recognized that the OCD 16 obtains the signal strength of the signalat the transceiver 22 b to generate a count if the OCD 16 has notreceived a signal from the vehicle 18, or to increment a previous countif the OCD 16 detects that it has received a previous signal from thevehicle 18.

In operation 344, the OCD 16 compares the incremented count to BLE₂_(_)Cnt to determine if the overall count has exceeded the predefinedthreshold. Again, it is desirable to have enough samples beforecalculating the EWA for the transceiver 22 b. If this condition is true,then the method 300 proceeds to operation 350. If not, then the method300 proceeds to operation 346.

In operation 346, the OCD 16 uses the latest sample (e.g., RSS_(BLE2)_(_) _(Cnt)) to determine the received signal strength BLE₂_(_)RSS_(total) at the transceiver 22 b. This is basically the sum ofall samples.

In operation 348, the OCD 16 calculates an initial EWA (i.e., a simplemean) (e.g., (BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt)) for the transceiver 22 bbased on the received signal strength BLE₂ _(_)RSS_(total) and on thecount BLE₂ _(_)Cnt.

In operation 350, the OCD 16 calculates a second EWA (e.g., (BLE₂_(_)EWA_(BLE2) _(_) _(Cnt)) for the transceiver 22 b after determiningthat the incremented count BLE₂ _(_) _(Cnt) exceeds the predefinedthreshold (see operation 344). The second EWA as calculated in operation350 differs from the initial EWA in that the initial EWA was based on acount that is not greater than the predefined threshold. Thus, becausethe second EWA is based on a sufficient number of samples, this valuemay have a higher confidence rate than the initial EWA. In general, theOCD 16 applies a low pass filter based on:BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt)=α*BLE₂ _(_)EWA_(BLE2) _(_)_(Cnt-1)+(1−α)RSS_(BLE2) _(_) _(Cnt)  (EQ. 5)

where BLE₂ _(_)EWA_(BLE2) _(_) _(Cnt-1) may correspond to a previousexpected weighted average of previously measured strength values andRSS_(BLE2) _(_) _(Cnt) corresponds to the most recent signal strength.

In operation 352, the OCD 16 increments the count for BLE₃ _(_)Cnt. Itis recognized that the OCD 16 obtains the signal strength of the signalat the transceiver 22 c to generate a count if the OCD 16 has notreceived a signal from the vehicle 18, or to increment a previous countif the OCD 16 detects that it has received a previous signal from thevehicle 18.

In operation 354, the OCD 16 compares the incremented count to BLE₃_(_)Cnt to determine if the overall count has exceeded the predefinedthreshold. Again, it is desirable to have enough samples beforecalculating the EWA for the transceiver 22 c. If this condition is true,then the method 300 proceeds to operation 360. If not, then the method300 proceeds to operation 356.

In operation 356, the OCD 16 uses the latest sample (e.g., RSS_(BLE3)_(_) _(Cnt)) to determine the received signal strength BLE₃_(_)RSS_(total) at the transceiver 22 c. This is basically the sum ofall samples.

In operation 358, the OCD 16 calculates an initial EWA (i.e., a simplemean) (e.g., (BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)) for the transceiver 22 cbased on the received signal strength BLE₃ _(_)RSS_(total) and on thecount BLE₃ _(_)Cnt.

In operation 360, the OCD 16 calculates a third EWA (e.g., (BLE₂_(_)EWA_(BLE2) _(_) _(Cnt)) for the transceiver 22 c after determiningthat the incremented count BLE₃ _(_) _(Cnt) exceeds the predefinedthreshold. The third EWA as calculated in operation 360 differs from theinitial EWA in that the initial EWA was based on a count that is notgreater than the predefined threshold. Thus, because the third EWA isbased on a sufficient number of samples, this value may have a higherconfidence rate than the initial EWA. In general, the OCD 16 applies alow pass filter based on:BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)=α*BLE₃ _(_)EWA_(BLE3) _(_)_(Cnt-1)+(1−α)RSS_(BLE3) _(_) _(Cnt)  (EQ. 6)

where BLE₃ _(_)EWA_(BLE1) _(_) _(Cnt-1) may correspond to a previousexpected weighted average of previously measured strength values andRSS_(BLE3) _(_) _(Cnt) corresponds to the most recent signal strength.

In operation 362, the OCD 16 compares each incremented count, forexample, BLE₁ _(_)Cnt, BLE₂ _(_)Cnt, and BLE₃ _(_)Cnt to the predefinedthreshold, k. In this case, it is desirable to have a sufficient numberof samples prior to determining the location for the OCD 16. If thiscondition is true, then the method 300 moves to operation 366. If not,then the method 300 moves to operation 364.

In operation 364, the OCD 16 determines that is position in the vehicle18 is indeterminate and then proceeds to operation 396.

In operation 366, the OCD 16 compares the values for the first EWA(e.g., (BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt))) and the second EWA (e.g.,(BLE₂ _(_)EWA_(BLE2) _(_) _(Cat))). For example, the OCD 16 determineswhether:BLE₂ _(_)EWA_(BLE2) _(_) _(Cat)−BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt) ≥t ₁

where t₁ corresponds to a first threshold value.

If this condition is true, then the method 300 proceeds to operation368. If not, then the method 300 proceeds to operation 370.

In operation 368, the OCD 16 determines that it is positioned in thezone 20 b (i.e., in the front passenger zone).

In operation 370, the OCD 16 compares the first EWA (e.g., BLE₁_(_)EWA_(BLE1) _(_) _(Cnt)) to the third EWA (e.g., (BLE₃ _(_)EWA_(BLE3)_(_) _(Cnt))). For example, the OCD 16 determines whether:BLE₃ _(_)EWA_(BLE3) _(_) _(Cnt)−BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt) >t ₂

where t₂ corresponds to a second threshold value.

If this condition is true, then the method 300 proceeds to operation368. If not, then the method 300 proceeds to operation 372.

In operation 368, the OCD 16 determines that is in the zone 20 c (i.e.,in the rear passenger zone).

In operation 372, the controller 32 determines whether:BLE₁ _(_)EWA_(BLE1) _(_) _(Cnt)>t₃

where t₃ corresponds to a third threshold value.

If this condition is true, then the method 300 proceeds to operation374. If not, then the method 300 proceeds to operation 364.

In operation 374, the OCD 16 determines that it is in the zone 20 a(i.e., in the driver zone). In this case, the OCD 16 could restrictfunctionality if it is also determined that the vehicle 18 is in motion.

In operation 376, the OCD 16 determines whether it has received thesignal ADV from all of the transceivers 22 in the vehicle 18. If thiscondition is true, then the method 300 moves to operation 378. If not,then the method 300 moves to operation 384.

In operation 384, the scan counter is compared to a value. If the scancounter is greater than the value, then the method 300 moves tooperation 388. If not, then the method 300 moves to operation 382.

In operation 388, the OCD 16 compares a scan counter to a predeterminedvalue and resets the scan counter to disassociate itself from thevehicle 18 as noted in operation 388.

In operation 382, the OCD 16 incorporates a time delay.

In operation 378, the OCD 16 determines whether the OCD 16 is active(e.g., being used by a driver such as manual operation or some otheroperation thereon that could cause a distraction). In this case, the OCD16 may restrict functionality to mitigate the potential for adistraction to occur if this condition is true. The method 300 thenmoves back to operation 332. If the condition of operation 378 is nottrue, then the method 300 moves to operation 380. From there, the method300 will move to operation 332 or 382.

While exemplary embodiments are described above, it is not intended thatthese embodiments describe all possible forms of the invention. Rather,the words used in the specification are words of description rather thanlimitation, and it is understood that various changes may be madewithout departing from the spirit and scope of the invention.Additionally, the features of various implementing embodiments may becombined to form further embodiments of the invention.

What is claimed is:
 1. An apparatus comprising: a controllerelectrically coupled to a plurality of transceivers within a vehicle forenabling bi-directional wireless communication between the controllerand an occupant communication device (OCD), the controller beingconfigured to: transmit an advertisement signal indicative of thevehicle being in motion from each transceiver to the OCD; receive, ateach transceiver, a request signal from the OCD at a first power level;determine a location of the OCD in the vehicle in response to receivingthe request signal at each transceiver at the first power level;transmit a response signal indicative of the location of the OCD in thevehicle to the OCD; measure a signal strength of the first power levelof the request signal at a first transceiver to provide a first measuredsignal strength; and increment a first count in response to measuringthe signal strength at the first transceiver prior to determining thelocation of the OCD.
 2. The apparatus of claim 1 wherein the firsttransceiver is positioned in a driver zone of the vehicle and at leastone second transceiver is positioned in a passenger zone of the vehicle.3. The apparatus of claim 2 wherein the controller is further configuredto transmit the response signal to indicate whether the OCD is locatedin one of the driver zone, the passenger zone, and an indeterminateposition within the vehicle.
 4. The apparatus of claim 2 wherein thecontroller is further configured to compare the first count to a firstpredefined threshold prior to determining the location of the OCD in thevehicle.
 5. The apparatus of claim 4 wherein the controller includes afilter that is configured to determine a first exponentially weightedaverage of the first measured signal strength and a first previousexponentially weighted average of first previously measured signalstrength values at the first transceiver in response to the first countbeing greater than the first predefined threshold.
 6. The apparatus ofclaim 5 wherein the controller is further configured to compare thefirst exponentially weighted average to a first threshold value and todetermine that the OCD is in the driver zone in response to the firstexponentially weighted average being greater than a first thresholdvalue.
 7. The apparatus of claim 5 wherein: the controller is furtherconfigured to: measure a signal strength of the first power level of therequest signal at the at least one second transceiver to provide asecond measured signal strength; and increment a second count inresponse to measuring the signal strength at the at least one secondtransceiver.
 8. The apparatus of claim 7 wherein the controller isfurther configured to compare the second count to a second predefinedthreshold prior to determining the location of the OCD in the vehicle.9. The apparatus of claim 8 wherein the controller includes a filterthat is configured to determine a second exponentially weighted averageof the second measured signal strength and a second previousexponentially weighted average of second previously measured signalstrength values at the at least one second transceiver in response tothe second count being greater than the second predefined threshold. 10.The apparatus of claim 9 wherein the controller is further configured totake a difference between the second exponentially weighted average andthe first exponentially weighted average to generate a differenceexponentially weighted average and to compare the differenceexponentially weighted average to a second threshold value.
 11. Theapparatus of claim 10 wherein the controller is further configured todetermine that the OCD is in the passenger zone in response to thedifference exponentially weighted average being greater than the secondthreshold value.
 12. A method for locating an occupant communicationdevice in a vehicle, the method comprising: communicating between aplurality of transceivers in a vehicle and an occupant communicationdevice (OCD); transmitting an advertisement signal indicative of thevehicle being in motion from each transceiver to the OCD; receiving, ateach transceiver, a scan request signal from the OCD at a first powerlevel; determining a location of the OCD in the vehicle in response toreceiving the scan request signal at each transceiver at the first powerlevel; transmitting a scan response signal indicative of the location ofthe OCD in the vehicle to the OCD; measuring a signal strength of thefirst power level of the scan request signal at a first transceiver toprovide a first measured signal strength; and incrementing a first countin response to measuring the signal strength at the first transceiverprior to determining the location of the OCD.
 13. The method of claim 12wherein the a first transceiver is positioned in a driver zone of thevehicle and at least one second transceiver is positioned in a passengerzone of the vehicle.
 14. The method of claim 13 further comprisingtransmitting the response signal to indicate whether the OCD is locatedin one of the driver zone, the passenger zone, and an indeterminateposition within the vehicle.
 15. A method comprising: transmitting anadvertisement signal indicating vehicle motion from transceivers to anoccupant communication device (OCD); receiving a request signal from theOCD at a power level; measuring a signal strength of the power level ata first transceiver in a vehicle; incrementing a count responsive tomeasuring the signal strength; determining an OCD location afterincrementing the count ; and transmitting a response signal indicatingthe OCD location to the OCD.
 16. The method of claim 15 wherein thetransceivers include the first transceiver being positioned in a driverzone of the vehicle and at least one second transceiver being positionedin a passenger zone of the vehicle.